package genetic_algorithm;

import java.util.List;

public interface Chromosome {

	/**
	 * Returns index'th value of chromosome's data
	 * @param index index of wanted data
	 * @return index'th value of chromosome's data
	 * @throws IllegalArgumentException if index is illegal value
	 */
	public Object getValue(int index) throws IllegalArgumentException;
	
	public void setValue(int index, Object obj) throws IllegalArgumentException;

	/**
	 * Returns entire data of the chromosome
	 * @return list of all of chromosome's values
	 */
	public List<Object> getAllValues();
}